package com.jiangyao.dao;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.jiangyao.model.dto.SubjectListPageDto;
import com.jiangyao.model.dto.backend.EvaluationListPageDTO;
import com.jiangyao.model.entity.Evaluation;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.jiangyao.model.vo.CommentReplyVo;
import com.jiangyao.model.vo.EvaluationVo;
import com.jiangyao.model.vo.backend.EvaluationListVO;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * <p>
 * 评价 Mapper 接口
 * </p>
 *
 * @author lijing
 * @since 2020-08-30
 */
public interface IEvaluationDao extends BaseMapper<Evaluation> {

    Page<EvaluationVo> getListPage(Page<EvaluationVo> page, @Param("subjectListPageDto")SubjectListPageDto subjectListPageDto);

    Page<EvaluationVo> getPublicListPage(Page<EvaluationVo> page, @Param("subjectListPageDto")SubjectListPageDto subjectListPageDto);


    List<CommentReplyVo> getReplayListById(Integer id);

    /**
     * 后台管理-评价列表
     *
     * @param page        分页
     * @param listPageDTO 列表参数
     * @return 结果
     */
    Page<EvaluationListVO> getListPageForBackend(Page<EvaluationListVO> page, @Param("listPageDTO") EvaluationListPageDTO listPageDTO);

    /**
     * 后台管理-回复评价列表
     *
     * @param page        分页
     * @param listPageDTO 列表参数
     * @return 结果
     */
    Page<EvaluationListVO> getReplyListPage(Page<EvaluationListVO> page, EvaluationListPageDTO listPageDTO);
}
